package cn.cyh.queue_service.model.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.time.LocalDate;
import java.time.LocalDateTime;

/**
 * 统计数据实体
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@TableName("biz_statistics")
public class Statistics {
    
    /**
     * 统计ID
     */
    @TableId(type = IdType.AUTO)
    private Long id;
    
    /**
     * 统计日期
     */
    private LocalDate statDate;
    
    /**
     * 业务类型ID
     */
    private Long serviceTypeId;
    
    /**
     * 窗口ID
     */
    @TableField(exist = false)
    private Long windowId;
    
    /**
     * 操作员ID
     */
    @TableField(exist = false)
    private Long staffId;
    
    /**
     * 总票数
     */
    private Integer totalTickets;
    
    /**
     * 已完成数
     */
    private Integer completedCount;

    /**
     * 等待人数
     */
    private Integer waitingCount;
    
    /**
     * 未到场数
     */
    private Integer noShowCount;
    
    /**
     * 平均等待时间(分钟)
     */
    private Integer avgWaitTime;
    
    /**
     * 平均服务时间(分钟)
     */
    private Integer avgServiceTime;
    
    /**
     * 高峰时段(小时)
     */
    private Integer peakHour;
    
    /**
     * 创建时间
     */
    private LocalDateTime createTime;
    
    /**
     * 更新时间
     */
    private LocalDateTime updateTime;
} 